package com.amani.module.medical_supplies.mapper;

import org.activiti.engine.runtime.ProcessInstance;
import org.activiti.engine.task.Task;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface IWorkflowBiz {
    void claim(String taskId, String userId);
    void complete(String taskId);
    void complete(String taskId, Map<String, Object> variables);
    void doCompleteTask(String taskId, String user, Map<String, Object> variables);
    boolean isFinished(String processID);
    List<Task> queryTasksByRoleAndProcessID(String role, String processID);
    List<Task> queryTasksByCandidateUserAndProcessID(String user, String processID);
    List<Task> queryTasksByCandidateUser(String user);
    Task queryTaskByRoleAndProcessID(String role, String processID);
    List<Task> queryTodoListbyRole(String processDefinitionKey, List<String> roleNames);
    ProcessInstance startProcess(String processDefinitionKey, String bussinessKey, HashMap<String, Object> variables);
    Task searchTaskById(String taskID);
    ProcessInstance searchProcessInstanceById(String processInstanceId);
    String getBussinessKeyByProcessInstanceId(String processInstanceId);
}
